-- *****************************************************************
-- CISCO-TELNET-SERVER-MIB.my
--   
-- MIB file for telnet application server.
-- May 2007, Zaryab Munir.
--   
-- Copyright (c) 2007 by cisco Systems Inc.
-- All rights reserved.
--   
-- ****************************************************************

CISCO-TELNET-SERVER-MIB DEFINITIONS ::= BEGIN

IMPORTS
    MODULE-IDENTITY,
    OBJECT-TYPE,
    NOTIFICATION-TYPE,
    Unsigned32
        FROM SNMPv2-SMI
    MODULE-COMPLIANCE,
    NOTIFICATION-GROUP,
    OBJECT-GROUP
        FROM SNMPv2-CONF
    SnmpAdminString
        FROM SNMP-FRAMEWORK-MIB
    InetAddressType,
    InetAddress,
    InetPortNumber
        FROM INET-ADDRESS-MIB
    TruthValue
        FROM SNMPv2-TC
    ciscoMgmt
        FROM CISCO-SMI;


ciscoTelnetServerMIB MODULE-IDENTITY
    LAST-UPDATED    "200705080000Z"
    ORGANIZATION    "Cisco Systems, Inc."
    CONTACT-INFO
            "Cisco Systems
            Postal: 170 W Tasman Drive
            San Jose, CA  95134
            USA
            Tel: +1 800 553 -NETS
            E-mail: cs-san@cisco.com,
                    cs-lan-switch-snmp@cisco.com"
    DESCRIPTION
        "MIB module for displaying and configuring
        Telnet related features in a device.
        Telnet is a program to log into another computer over
        a network, to execute commands in a remote machine."
    REVISION        "200705080000Z"
    DESCRIPTION
        "Initial version of this MIB module."
    ::= { ciscoMgmt 630 }


ciscoTelnetServerMIBNotifs  OBJECT IDENTIFIER
    ::= { ciscoTelnetServerMIB 0 }

ciscoTelnetServerMIBObjects  OBJECT IDENTIFIER
    ::= { ciscoTelnetServerMIB 1 }

ciscoTelnetServerMIBConform  OBJECT IDENTIFIER
    ::= { ciscoTelnetServerMIB 2 }

-- Conformance

ciscoTelnetServerMIBCompliances  OBJECT IDENTIFIER
    ::= { ciscoTelnetServerMIBConform 1 }

ciscoTelnetServerConfigObjects  OBJECT IDENTIFIER
    ::= { ciscoTelnetServerMIBObjects 1 }

ciscoTelnetServerStatusObjects  OBJECT IDENTIFIER
    ::= { ciscoTelnetServerMIBObjects 2 }


ctsTelnetActivation OBJECT-TYPE
    SYNTAX          TruthValue
    MAX-ACCESS      read-write
    STATUS          current
    DESCRIPTION
        "This object specifies whether the Telnet access service on
        the device is enabled." 
    ::= { ciscoTelnetServerConfigObjects 1 }

ctsSessionEndedNotifEnable OBJECT-TYPE
    SYNTAX          TruthValue
    MAX-ACCESS      read-write
    STATUS          current
    DESCRIPTION
        "This object controls whether the system produces
        ctsSessionEnded notifications. A 'false' value will prevent
        ctsSessionEnded notifications from being generated by this
        system." 
    ::= { ciscoTelnetServerConfigObjects 2 }

ctsSessionStartedNotifEnable OBJECT-TYPE
    SYNTAX          TruthValue
    MAX-ACCESS      read-write
    STATUS          current
    DESCRIPTION
        "This object controls whether the system produces
        ctsSessionStarted notifications. A 'false' value will prevent
        ctsSessionStarted notifications from being generated by this
        system." 
    ::= { ciscoTelnetServerConfigObjects 3 }

ctsSessionDeniedNotifEnable OBJECT-TYPE
    SYNTAX          TruthValue
    MAX-ACCESS      read-write
    STATUS          current
    DESCRIPTION
        "This object controls whether the system produces
        ctsSessionDenied notifications. A 'false' value will prevent
        ctsSessionDenied notifications from being generated by this
        system." 
    ::= { ciscoTelnetServerConfigObjects 4 }

ctsSessionFailureNotifEnable OBJECT-TYPE
    SYNTAX          TruthValue
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "This object controls whether the system produces
        ctsSessionLoginFailure notifications. A 'false' value will
        prevent ctsSessionLoginFailure notifications from being
        generated by this system." 
    ::= { ciscoTelnetServerConfigObjects 5 }

ctsSessionsTable OBJECT-TYPE
    SYNTAX          SEQUENCE OF CtsSessionsEntry 
    MAX-ACCESS      not-accessible
    STATUS          current
    DESCRIPTION
        "This table provides data for each telnet session on an entity
        capable of running telnet server."
    ::= { ciscoTelnetServerStatusObjects 1 }

ctsSessionsEntry OBJECT-TYPE
    SYNTAX          CtsSessionsEntry
    MAX-ACCESS      not-accessible
    STATUS          current
    DESCRIPTION
        "An entry (conceptual row) in the ctsSessionsTable.
        This entry lists the data for the telnet session on the entity
        running the telnet server.

        An entry in the ctsSessionTable, that provides
        detailed information about all the existing telnet sessions on
        the device. 

        An entry will be created for every telnet session established
        on the device. The entry will be removed upon termination
        of the telnet session."
    INDEX           { ctsSessionID } 
    ::= { ctsSessionsTable 1 }

CtsSessionsEntry ::= SEQUENCE {
        ctsSessionID                Unsigned32,
        ctsSessionDescription       SnmpAdminString,
        ctsSessionClientAddressType InetAddressType,
        ctsSessionsClientAddress    InetAddress,
        ctsSessionPID               Unsigned32,
        ctsSessionUserID            SnmpAdminString,
        ctsSessionTcpPort           InetPortNumber
}

ctsSessionID OBJECT-TYPE
    SYNTAX          Unsigned32
    MAX-ACCESS      not-accessible
    STATUS          current
    DESCRIPTION
        "An arbitrary index that uniquely identifies a Telnet Session." 
    ::= { ctsSessionsEntry 1 }

ctsSessionDescription OBJECT-TYPE
    SYNTAX          SnmpAdminString
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "Human readable description about the session." 
    ::= { ctsSessionsEntry 2 }

ctsSessionClientAddressType OBJECT-TYPE
    SYNTAX          InetAddressType
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "The type of Internet address of the client that requested this
        session." 
    ::= { ctsSessionsEntry 3 }

ctsSessionsClientAddress OBJECT-TYPE
    SYNTAX          InetAddress
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "The Internet address of the client that requested this session.
        The type of this address is determined by the value of the
        ctsSessionClientAddressType object." 
    ::= { ctsSessionsEntry 4 }

ctsSessionPID OBJECT-TYPE
    SYNTAX          Unsigned32
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "The object indicates the process ID of the process
        serving this telnet session on the device." 
    ::= { ctsSessionsEntry 5 }

ctsSessionUserID OBJECT-TYPE
    SYNTAX          SnmpAdminString
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "The object indicates user name associated with this
        telnet session." 
    ::= { ctsSessionsEntry 6 }

ctsSessionTcpPort OBJECT-TYPE
    SYNTAX          InetPortNumber
    MAX-ACCESS      read-only
    STATUS          current
    DESCRIPTION
        "The TCP source port number of the remote client." 
    ::= { ctsSessionsEntry 7 }
 


ctsSessionEnded NOTIFICATION-TYPE
    OBJECTS         {
                        ctsSessionClientAddressType,
                        ctsSessionsClientAddress,
                        ctsSessionUserID,
                        ctsSessionTcpPort
                    }
    STATUS          current
    DESCRIPTION
        "This notification signifies that the agent entity has detected
        end of a telnet session."
   ::= { ciscoTelnetServerMIBNotifs 1 }

ctsSessionStarted NOTIFICATION-TYPE
    OBJECTS         {
                        ctsSessionClientAddressType,
                        ctsSessionsClientAddress,
                        ctsSessionUserID
                    }
    STATUS          current
    DESCRIPTION
        "This notification is sent when the agent entity has accepted a
        new telnet session."
   ::= { ciscoTelnetServerMIBNotifs 2 }

ctsSessionDenied NOTIFICATION-TYPE
    OBJECTS         {
                        ctsSessionClientAddressType,
                        ctsSessionsClientAddress,
                        ctsSessionTcpPort
                    }
    STATUS          current
    DESCRIPTION
        "This notification signifies that the agent has refused a telnet
        session."
   ::= { ciscoTelnetServerMIBNotifs 3 }

ctsSessionLoginFailure NOTIFICATION-TYPE
    OBJECTS         {
                        ctsSessionClientAddressType,
                        ctsSessionsClientAddress,
                        ctsSessionUserID,
                        ctsSessionTcpPort
                    }
    STATUS          current
    DESCRIPTION
        "This notification is sent when the agent entity has detected
        attempt to login with wrong credentials."
   ::= { ciscoTelnetServerMIBNotifs 4 }
ciscoTelnetServerMIBGroups  OBJECT IDENTIFIER
    ::= { ciscoTelnetServerMIBConform 2 }


ciscoTelnetServerMIBCompliance MODULE-COMPLIANCE
    STATUS          current
    DESCRIPTION
        "The compliance statement for SNMP Agents which implement this
        MIB."
    MODULE          -- this module
    MANDATORY-GROUPS {
                        ctsMIBSessionsObjectGroup,
                        ctsMIBNotificationGroup
                    }

    GROUP           ctsSessionNotifsControlGroup
    DESCRIPTION
        "This group is optional."
    ::= { ciscoTelnetServerMIBCompliances 1 }

-- Units of Conformance

ctsMIBSessionsObjectGroup OBJECT-GROUP
    OBJECTS         {
                        ctsSessionDescription,
                        ctsSessionClientAddressType,
                        ctsSessionsClientAddress,
                        ctsTelnetActivation,
                        ctsSessionPID,
                        ctsSessionUserID,
                        ctsSessionTcpPort
                    }
    STATUS          current
    DESCRIPTION
        "This group of objects maintains informative data for each
        Telnet session on a device that runs Telnet Server."
    ::= { ciscoTelnetServerMIBGroups 1 }

ctsMIBNotificationGroup NOTIFICATION-GROUP
   NOTIFICATIONS    {
                        ctsSessionEnded,
                        ctsSessionStarted,
                        ctsSessionDenied,
                        ctsSessionLoginFailure
                    }
    STATUS          current
    DESCRIPTION
        "This group contains notifications for this MIB."
    ::= { ciscoTelnetServerMIBGroups 2 }

ctsSessionNotifsControlGroup OBJECT-GROUP
    OBJECTS         {
                        ctsSessionEndedNotifEnable,
                        ctsSessionStartedNotifEnable,
                        ctsSessionDeniedNotifEnable,
                        ctsSessionFailureNotifEnable
                    }
    STATUS          current
    DESCRIPTION
        "A collection of objects providing configuration information
        applicable to all session notifications."
    ::= { ciscoTelnetServerMIBGroups 3 }

END